首次配方创建
首次配方创建
本次深入讲解将解释什么是配方,概述 Classification 与 Segmentation 之间的差异,以及提供关于创建配方的逐步指南。它还包括对 Imaging Setup 配置、模板图像捕获与对齐设置、ROI 优化、用于 AI 训练的数据收集,以及图像增强配置的详细演练。
学习目标
通过本次深入学习,您将理解:
- 什么是配方
- 分类(Classification)与分割(Segmentation)之间的差异,以及何时使用它们
- 如何创建配方
- 如何配置 Imaging Setup
- 如何捕获模板图像并配置对齐器
- ROIs(Region of Interest)是什么,以及如何优化它们
- 用于 AI 训练的数据收集
- 配方测试与验证
What is a Recipe?
- 一组已配置的指令,告知相机如何对特定部件或产品进行检查。
- 定义相机设置,包括曝光、对焦和照明参数,以实现稳定的一致图像捕捉。
- 包含处理逻辑,例如 ROI 定义、对齐器、分类或分割类别。
- 存储输入/输出配置,以与自动化系统集成,用于通过/不通过或高级信号。
- 可以被保存并重复使用,以确保跨班次、生产线或工厂的一致检查。
分类 vs. Segmentation
定义
- Classification(分类):识别 ROI 中对象的类型
- Segmentation(分割):在图像/ROI 中定位并分析区域
示例
| 图像分类 | 图像分割 | 图像分类 | 图像分割 |
|---|---|---|---|
| 这是什么羊? | 哪些像素属于哪个对象? | 这张披萨是合格还是次品? | 每个 pepperoni 位于何处? |
![]() | ![]() | ![]() | ![]() |
关键对比
| 分类(Classification) | 分割(Segmentation) | |
|---|---|---|
| 速度 | 速度取决于成像设置和复杂性。通常在简单设置下高效且快速 | 在优化时,速度可能与分类同样快,甚至更快,尤其是在采用精简模型时 |
| 准确性 | 对整体通过/不通过或部件类型识别比较有用 | 对于精确缺陷定位具有更高的准确性 |
| 复杂性 | 设置和维护较为简单;参数较少 | 复杂 — 需要更多数据、标注和调优 |
| 数据需求 | 低 — 需要较少带标签的图像 | 中等 — 需要大量具有详细像素级精确注释的图像 |
| 用例 | 部件存在、方向、基本质量检查、部件已插入/未插入等 | 表面缺陷、微小特征检查、多缺陷检测、计数、尺寸测量等 |
创建和导出配方
使用位于某个配方旁边的 Export Recipe 按钮导出单个配方。
在屏幕顶部的 Export 按钮一次导出多个配方。

在屏幕顶部的 Import 按钮导入配方。

记住: 每个配方一次仅支持一种检查类型,可能是 segmentation(分割)或 classification(分类)。在开始设置之前,请选择正确的类型。
成像设置
焦点
- 功能说明: 调整捕获图像的清晰度。
- 使用方法: 滑动直至图像中的边缘和细节看起来清晰锐利。
对焦时请使用边缘清晰的目标物(如尺子或校准卡)。
图像旋转
- 功能说明: 将图像旋转(0° 或 180°)。
- 使用场景: 如果相机安装成某个角度,但希望在界面中显示相反方向的图像。
如果需要将图像旋转 90°,请旋转摄像机。
曝光时间 (ms)
- 功能说明: 拍摄图像时传感器暴露于光线中的时长。
- 影响:
- 曝光时间越高 → 图像更亮,但运动模糊风险增大。
- 曝光时间越低 → 光线较少,但在快速移动的场景中图像更清晰。
| 欠曝光 | 正确曝光 | 过曝 |
|---|---|---|
![]() | ![]() | ![]() |
曝光是对数性的,较高的曝光意味着更高的延迟(因为图像捕获需要更多时间)。
增益
- 功能说明: 以数字方式提升图像亮度(类似相机上的 ISO)。
- 影响:
- 增益越高 → 图像更亮,但会增加噪声(颗粒感)。
- 增益越低 → 图像更干净,但需要良好的照明。
| 高增益 | 低增益 |
|---|---|
![]() | ![]() |
| 更亮且噪声更大 | 更暗且噪声更少 |
只有在无法调整曝光或照明时才增加增益。
自动白平衡
- 功能说明: 自动调整色彩平衡,使白色看起来仍然白色。
- 使用场景:
- 理想用于具有可变或变化的照明条件的环境。
- 对于稳定的设定,手动白平衡可以提供更一致且可重复的结果。
要手动调整白平衡:
- 将 Auto White Balance 开关设为开启。
- 将一张白纸放在相机下方或镜头前方。
- 将开关设为关闭以锁定白平衡设置。
Gamma
- What it is: 在不显著影响暗部或高光的前提下,调整中间调的亮度。
- Effect: 有助于在阴影处显示细节,或减少过亮高光。
Lens Correction
- What it is: 矫正广角镜头造成的畸变。
- When to enable: 若图像边缘看起来弯曲或失真,请将其 ON 打开,以提高对齐任务的准确性。
LED Strobe Mode
- What it is: 控制相机内置 LED 照明的触发时机。
- Options:
- Off: LED 将持续开启。
- On: LED 仅在拍摄时闪烁,减少反射。
LED Light Pattern
- What it is: 选择 LED 的照明模式(例如 All on、all off、Left and right、top and bottom 等)。
- Use case: 根据您的照明设置进行调整,以获得部件的最佳照明。
使用定向模式,通过关闭直接照射到反射表面的 LED,同时保持斜向光源工作,以获得更好的可见性,从而减少眩光或反射。
LED Light Intensity
- What it is: 调整 LED 照明的亮度。
- Best practice: 从较低亮度开始,逐步增加,以避免眩光或反射。
Photometric Control
- What it is: 捕获 multiple images(通常为四张) with different directional lighting(左、右、上、下),然后 combines them 成为一张增强图像。
- Purpose: 该技术通过为部件提供均匀、一致的照明来减少阴影并突出细微的表面特征。
- When to use: 适用于复杂部件、高度反光表面,或纹理不均匀的部件,在单光照图像下可能会错过关键细节。
Trigger Settings

Manual Trigger
- What it is: 功能:按下 HMI 屏幕上的按钮时拍摄图像。
- Best for: 测试、设置或人工检查。
Hardware Trigger
- What it is: 功能:通过传感器等电信号触发相机。
- Best for: 在传感器检测到部件存在的自动化生产线。
PLC Trigger
- What it is: 触发信号通过工业控制器(PLC)发送,以与其他设备实现同步运行。
- Best for: 适用于需要精确时序的全自动化系统。
Aligner Trigger
- What it is: 在视野中检测到部件对齐时自动触发。
- Best for: 在拍摄前需要部件保持一致定位,或没有其他可靠触发器时使用。
Interval Trigger
- What it is: 按设定时间间隔触发相机。
- Best for: 在没有部件检测传感器的情况下进行连续工艺或监控移动生产线。
模板图像与对齐
跳过对齐器
- 作用: 在检查过程中关闭对齐步骤。
- 何时使用: 如果部件在图像中的位置和方向始终保持不变。
模板区域
- 作用: 定义用于对齐的模板图像区域。
- 矩形: 绘制一个感兴趣区域(ROI)。
- 圆形: 绘制一个圆形的感兴趣区域(ROI)。
- 忽略模板区域: 在对齐时排除某些区域,以避免干扰性图样或不相关特征。
- 最佳用法: 帮助系统仅关注最具辨识度的部件特征,以实现更准确的对齐。
旋转范围

- 作用: 设定系统在将部件与模板匹配时可容忍的旋转角度(单位:度)。
- 示例: 设置为 ±20°,允许部件略微旋转但仍能被检测到。
- 何时调整: 如部件在生产过程中易发生旋转,则增大该值;若定向性高度一致,则降低该值。
灵敏度
- 作用: 控制系统在实时图像与模板之间寻找匹配的精细程度。
- 效果: 高灵敏度 → 能检测出更微小的细节,适用于复杂部件。
- 较低灵敏度: 减少误匹配,但可能错过细微特征。
置信度阈值
- 作用: 设定系统接受检测所需的最小置信度分数。
- 效果: 较高阈值 → 较少误报,但可能错过边界匹配。
- 较低阈值: 将有更多检测,但误报风险增加。
从中等起步,并根据测试结果进行调整。
尺度不变
- 作用: 允许系统检测略大或略小于原始模板图像的部件。
- 何时启用: 如部件尺寸可能因定位、距离变化或制造公差而略有变化。
实时预览图例

1. 一个可配置的边界框,用于在触发期间监控的相机视场(FOV)的特定区域。
- 用途: 确保相机仅聚焦相关区域,忽略不必要的背景区域。
- 最佳用法: 对于移动对象,确保部件始终完全位于检测区域。
-
- 通过减少分析的图像数据量来优化处理速度。
2. 一个可视化的红点,显示图像中所有定义的 ROI(Regions of Interest)的中心点。
- 用途: 帮助您将搜索区域相对于部件或相机视图进行对齐和定位。
3. 绿色线条表示对象边缘已被检测。
如果你看到线变成红色,请尝试增大 ROI 大小、调整 ROI,或提高灵敏度。

ROI (Region of Interest) 定义与优化
Inspection Types
- What it is: 定义正在执行的 检查类型(inspection type),并将相似的 ROI(Region of Interest,感兴趣区域)分组。
- Example: “Holes” 用于检查零件中孔的存在、大小或质量。
- Key features:
- Add Inspection Type: 为不同检查需求创建新类别。
- ROI 数量: 显示当前分配给该检查类型的 ROI 的数量。
Transformation

- What it is: 调整所选 ROI 的 位置与几何形状,以实现精确对齐和放置。
- Fields and their purpose:
- Height/Width: 改变 ROI 的大小。
- X / Y: 在水平(X)和垂直(Y)轴上移动 ROI 的位置。
- Angle: 绕其中心旋转 ROI。
- Best use: 当存在重复模式时加速设置,例如多个相同孔。
Inspection Regions

- What it is: 模板图像中定义的所有 ROI 的列表。
- Features:
- Add Inspection Region: 手动创建新的 ROI。
- Ignore Regions: 从处理中排除特定区域。
- Edit: 保存、删除或取消。
- Lock Icon: 表示已锁定的 ROI,未解锁前无法移动。
Live Preview Mode
- What it is: 调整或新增 ROI 后显示实时反馈。
- Use case: 在设置过程中非常适合用于 微调 ROI 位置和大小。
Test Button
- What it is: 基于旧图像运行回测以验证变更。
- Use case: 将当前结果与先前设置进行比较,以提高准确性与一致性。
数据收集与 AI 训练
定义不同的检查类别,并根据其指定的检查类型对每个 ROI 进行标注(见下方示例)。

使用 Annotation Tools 对图像进行标注/注释。使用 Brush Class 下拉菜单选择要标注的类别。对于分割,当前每个配方的类别上限为 10 类。

良好数据的重要性

- Garbage In, Garbage Out(输入即垃圾,输出亦如此): AI 模型的表现只能与输入数据的质量成正比。质量差或不一致的数据会导致结果不准确。
- Diversity Matters: 收集能够代表所有真实世界变化的数据:不同班次、照明条件、零件位置和表面状况。
- Quality Over Quantity: 更小、干净、标注清晰的数据集通常比大型但嘈杂或不一致的数据集表现更好。
Annotation Basics:
- Classification: 将整张图像或 ROI 标注为一个特定类别(例如 “Good”、 “Damaged”)。
- Segmentation: 使用像素级准确度刷过、轮廓化或高亮显示感兴趣的特定区域(例如表面上的划痕位置)。
- Consistency: 在标注时使用一致的规则和定义,以避免训练过程中的混淆。

Common Pitfalls
- Insufficient Data: 样本过少将导致欠拟合,进而在实际场景中的表现不佳。
- Imbalanced Classes: 某一类别的过度表示(例如大量“Good”零件但缺陷较少)会使模型偏斜。
- Poor Labeling: 不正确、不一致或匆忙的标注会导致显著的准确性下降。
- Ignoring Environment Changes: 当照明、零件方向或表面条件发生变化时不更新数据集,会导致准确性漂移。
- Not Validating Data: 在训练前跳过质量检查通常会导致时间浪费和返工。
数据增强
图像增强通过对训练图像进行人工修改以提升模型的鲁棒性。它们模拟现实世界的变化,如亮度变化、旋转或噪声,从而使模型在不同条件下也能良好地工作。
颜色增强

Brightness
- What it is: 调整图像的亮度。
- Use case: 处理生产过程中的照明微小变化。
在稳定设置下使用 ±0.1;若照明变化较大,请增大该数值。
Contrast
- What it is: 改变明暗区域之间的对比度。
- Use case: 适用于具有纹理或表面差异的部件,帮助模型适应视觉差异。
Hue
- What it is: 稍微改变色调。
- Use case: 适用于照明颜色(如 LED 色温)随时间可能发生偏移的场景。
Saturation
- What it is: 调整颜色的饱和度。
- Use case: 有助于应对照明变化导致的图像显得黯淡或更鲜艳的情况。
几何增强

Rotation Range
- What it is: 在设定范围内对图像进行随机旋转(如 ±20°)。
- Use case: 适用于部件进入时可能略微旋转的位置。
避免对通常固定方向的部件进行过度旋转。
Flip
- What it is: 使图像水平翻转、垂直翻转,或两者都翻转。
- Use case: 对称部件或在搬运过程中方向可能翻转时有帮助。
光照与颜色仿真

Planckian
- What it is: 模拟色温的变化(如暖光或冷光)。
- Use case: 处理具有不同光源的工作单元或位移中的差异。
Gaussian Noise
- What it is: 向图像添加细微噪声。
- Use case: 当生产环境存在微小视觉噪声或相机传感器伪影时,提高鲁棒性。
运动仿真

Motion Blur
- What it is: 模拟拍摄时部件微移动所产生的轻微模糊。
- Use case: 对于高速线条,可能出现的运动模糊尤为关键。
概率(prob)
- What it is: 设置训练期间应用每种增强的概率。
- Example: 0.50 = 50% 的概率对任意给定的训练图像应用该变化。
大多数增强从 0.5 开始,并根据实际世界的变异性进行调整。
训练参数(分割)
训练参数(也称为超参数)是控制 模型如何从数据中学习 的设置。
学习率
- 定义: 控制在训练过程中模型更新其内部权重的速度。
- 数值(0.003): 学习率越高,模型学习越快;但过高可能导致不稳定或精度下降。
- 滑块范围: 从 10^-4(非常慢)到 10^-1(非常快)。
通常,对于分割任务,0.001–0.01 之间的取值是一个不错的起点。
ROI(Region of Interest)大小
- 定义: 定义在训练期间使用的图像区域的大小(宽度 × 高度)。
- 未选中: 默认情况下,模型会基于您的数据自动确定 ROI。
- 选中时: 如果需要一致的输入尺寸(例如,所有图像裁剪为 256×256 像素),可以手动设置宽度和高度。
当数据集中的图像大小不同时,且你希望输入尺寸一致以获得更好的稳定性、可重复性,或与已知模型架构匹配时,使用固定尺寸(例如 256×256)。
让它在数据已经具有统一分辨率,或你希望系统基于数据集的特性自动优化 ROI 时自动选择。
迭代次数(Epochs)
- 定义: 一个 epoch 等于对整个训练数据集的一次完整遍历。
- 数值(100): 模型将进行 100 次完整训练轮次。
增加这个数值通常会在达到一定程度上提高准确性,但需要更长时间。
经验法则:在训练过程中监控训练损失和验证损失。如果验证损失在训练过程中停止下降,而训练损失仍在下降,这通常表示模型出现过拟合,应提前停止训练。
架构
- 定义: 选择神经网络的规模和复杂度。
- Small: 训练更快,通常足以应对大多数数据集。非常适合快速试验或较小数据集。
- Larger models 可以捕获更多细节,但在小型数据集上可能会过拟合;而较小的模型更高效,在数据有限时具有更好的泛化能力。
从 Small 开始,通常就足够,并且在扩大规模之前有助于你更快地迭代。
External GPU
如需了解更多关于 External GPU 的信息,请联系技术支持。
训练参数(Classification)
训练参数(也称为超参数)是控制 “机器学习模型如何从数据中学习” 的设置。
学习率
- 定义: 控制在训练过程中模型更新内部权重的速度。
- 数值(0.003): 学习率越高,模型学习越快,但过高可能导致不稳定或精度下降。
- 滑块范围: 从 10^-4(非常慢)到 10^-1(非常快)。
通常,0.001–0.01 之间的数值是分割任务的一个良好起点。
验证百分比(Validation Percent)
- 定义: 定义在训练过程中用于验证(测试)的数据集所占比例。
- 目的: 验证数据有助于监控模型在未见样本上的表现,防止过拟合。
- 范围: 0–50%。
常见选择是 10–20%。
If set to 0%, all data is used for training, which may improve training accuracy but makes it harder to detect overfitting.
ROI(Region of Interest)大小
- 定义: 定义在训练期间使用的图像区域的尺寸(宽×高)。
- 未选中: 默认情况下,模型基于您的数据自动确定 ROI(Region of Interest)。
- 选中时: 如需保持输入尺寸的一致性(例如,所有图像裁剪为 256×256 像素),可以手动设置宽度和高度。
如果数据集中包含不同尺寸的图像,且你希望输入保持一致性以提高稳定性、可重复性或与已知的模型架构匹配,请使用固定尺寸(例如 256×256)。
让系统在数据已具统一分辨率,或你希望系统根据数据集的特征来优化最佳 ROI 时自动选择。
迭代次数(Epochs)
- 定义: 一个 epoch = 对整个训练数据集的完整遍历。
- 数值(100): 模型将进行 100 次完整遍历。
通常增加这个数值会在某个点上提升准确性,但也会延长训练时间。
经验法则:在训练过程中监控训练损失和验证损失。如果验证损失不再下降,而训练损失仍在下降,这通常表明模型可能出现过拟合,应提前停止训练。
架构
- 定义: 选择神经网络的大小和复杂度。
- Small: 训练更快,通常足以满足大多数数据集。非常适合快速试验或较小数据集。
从 Small 开始,通常就足够,并且在扩展规模之前能帮助你更快地迭代。
| 架构与相机 | 描述 | 推荐用途 |
|---|---|---|
| ConvNeXt-Pico | 超轻量级模型,针对速度和低内存使用进行了优化。 | 非常适合快速实验或资源有限的硬件。 |
| ConvNeXt-Nano | 比 Pico 略大;在成本增加很小的情况下提供更高的准确性。 | 适合小到中等规模数据集的平衡方案。 |
| ConvNeXt-Tiny | 在保持高效的同时提供更高的准确性。 | 适用于中等规模数据集和较长的训练时间。 |
| ConvNeXt-Small | 本列表中最强的变体,具有更高的容量和准确性。 | 适用于大型数据集或需要最高性能的场景。 |
外部 GPU
如需了解更多关于 External GPU 的信息,请联系技术支持。








